// noinspection JSUnresolvedReference /** * Field Google Map */ /* global jQuery, document, redux_change, redux, google */ (function ( $ ) { 'use strict'; redux.field_objects = redux.field_objects || {}; redux.field_objects.google_maps = redux.field_objects.google_maps || {}; /* LIBRARY INIT */ redux.field_objects.google_maps.init = function ( selector ) { if ( ! selector ) { selector = $( document ).find( '.redux-group-tab:visible' ).find( '.redux-container-google_maps:visible' ); } $( selector ).each( function ( i ) { let delayRender; const el = $( this ); let parent = el; if ( ! el.hasClass( 'redux-field-container' ) ) { parent = el.parents( '.redux-field-container:first' ); } if ( parent.is( ':hidden' ) ) { return; } if ( parent.hasClass( 'redux-field-init' ) ) { parent.removeClass( 'redux-field-init' ); } else { return; } // Check for delay render, which is useful for calling a map // render after JavaScript load. delayRender = Boolean( el.find( '.redux_framework_google_maps' ).data( 'delay-render' ) ); // API Key button. redux.field_objects.google_maps.clickHandler( el ); // Init our maps. redux.field_objects.google_maps.initMap( el, i, delayRender ); } ); }; /* INIT MAP FUNCTION */ redux.field_objects.google_maps.initMap = async function ( el, idx, delayRender ) { let delayed; let scrollWheel; let streetView; let mapType; let address; let defLat; let defLong; let defaultZoom; let mapOptions; let geocoder; let g_autoComplete; let g_LatLng; let g_map; let noLatLng = false; // Pull the map class. const mapClass = el.find( '.redux_framework_google_maps' ); const containerID = mapClass.attr( 'id' ); const autocomplete = containerID + '_autocomplete'; const canvas = containerID + '_map_canvas'; const canvasId = $( '#' + canvas ); const latitude = containerID + '_latitude'; const longitude = containerID + '_longitude'; // Add map index to data attr. // Why, say we want to use delay_render, // and want to init the map later on. // You'd need the index number in the // event of multiple map instances. // This allows one to retrieve it // later. $( mapClass ).attr( 'data-idx', idx ); if ( true === delayRender ) { return; } // Map has been rendered, no need to process again. if ( $( '#' + containerID ).hasClass( 'rendered' ) ) { return; } // If a map is set to delay render and has been initiated // from another scrip, add the 'render' class so rendering // does not occur. // It messes things up. delayed = Boolean( mapClass.data( 'delay-render' ) ); if ( true === delayed ) { mapClass.addClass( 'rendered' ); } // Create the autocomplete object, restricting the search // to geographical location types. g_autoComplete = await google.maps.importLibrary( 'places' ); g_autoComplete = new google.maps.places.Autocomplete( document.getElementById( autocomplete ), {types: ['geocode']} ); // Data bindings. scrollWheel = Boolean( mapClass.data( 'scroll-wheel' ) ); streetView = Boolean( mapClass.data( 'street-view' ) ); mapType = Boolean( mapClass.data( 'map-type' ) ); address = mapClass.data( 'address' ); address = decodeURIComponent( address ); address = address.trim(); // Set default Lat/lng. defLat = canvasId.data( 'default-lat' ); defLong = canvasId.data( 'default-long' ); defaultZoom = canvasId.data( 'default-zoom' ); // Eval whether to set maps based on lat/lng or address. if ( '' !== address ) { if ( '' === defLat || '' === defLong ) { noLatLng = true; } } else { noLatLng = false; } // Can't have empty values, or the map API will complain. // Set default for the middle of the United States. defLat = defLat ? defLat : 39.11676722061108; defLong = defLong ? defLong : -100.47761000000003; if ( noLatLng ) { // If displaying a map based on an address. geocoder = new google.maps.Geocoder(); // Set up Geocode and pass address. geocoder.geocode( {'address': address}, function ( results, status ) { let latitude; let longitude; // Function results. if ( status === google.maps.GeocoderStatus.OK ) { // A good address was passed. g_LatLng = results[0].geometry.location; // Set map options. mapOptions = { center: g_LatLng, zoom: defaultZoom, streetViewControl: streetView, mapTypeControl: mapType, scrollwheel: scrollWheel, mapTypeControlOptions: { style: google.maps.MapTypeControlStyle.HORIZONTAL_BAR, position: google.maps.ControlPosition.LEFT_BOTTOM }, mapId: 'REDUX_GOOGLE_MAPS', }; // Create map. g_map = new google.maps.Map( document.getElementById( canvas ), mapOptions ); // Get and set lat/long data. latitude = el.find( '#' + containerID + '_latitude' ); latitude.val( results[0].geometry.location.lat() ); longitude = el.find( '#' + containerID + '_longitude' ); longitude.val( results[0].geometry.location.lng() ); redux.field_objects.google_maps.renderControls( el, latitude, longitude, g_autoComplete, g_map, autocomplete, mapClass, g_LatLng, containerID ); } else { // No data found, alert the user. alert( 'Geocode was not successful for the following reason: ' + status ); } } ); } else { // If displaying map based on an lat/lng. g_LatLng = new google.maps.LatLng( defLat, defLong ); // Set map options. mapOptions = { center: g_LatLng, zoom: defaultZoom, // Start off far unless an item is selected, set by php. streetViewControl: streetView, mapTypeControl: mapType, scrollwheel: scrollWheel, mapTypeControlOptions: { style: google.maps.MapTypeControlStyle.HORIZONTAL_BAR, position: google.maps.ControlPosition.LEFT_BOTTOM }, mapId: 'REDUX_GOOGLE_MAPS', }; // Create the map. g_map = new google.maps.Map( document.getElementById( canvas ), mapOptions ); redux.field_objects.google_maps.renderControls( el, latitude, longitude, g_autoComplete, g_map, autocomplete, mapClass, g_LatLng, containerID ); } }; redux.field_objects.google_maps.renderControls = function ( el, latitude, longitude, g_autoComplete, g_map, autocomplete, mapClass, g_LatLng, containerID ) { let markerTooltip; let infoWindow; let g_marker; let geoAlert = mapClass.data( 'geo-alert' ); // Get HTML. const input = document.getElementById( autocomplete ); // Set objects into the map. g_map.controls[google.maps.ControlPosition.TOP_LEFT].push( input ); // Bind objects to the map. g_autoComplete = new google.maps.places.Autocomplete( input ); g_autoComplete.bindTo( 'bounds', g_map ); // Get the marker tooltip data. markerTooltip = mapClass.data( 'marker-tooltip' ); markerTooltip = decodeURIComponent( markerTooltip ); // Create infoWindow. infoWindow = new google.maps.InfoWindow(); // Create marker. g_marker = new google.maps.Marker( { position: g_LatLng, map: g_map, anchorPoint: new google.maps.Point( 0, - 29 ), draggable: true, title: markerTooltip, animation: google.maps.Animation.DROP } ); geoAlert = decodeURIComponent( geoAlert ); // Place change. google.maps.event.addListener( g_autoComplete, 'place_changed', function () { let place; let address; let markerTooltip; infoWindow.close(); // Get place data. place = g_autoComplete.getPlace(); // Display alert if something went wrong. if ( ! place.geometry ) { window.alert( geoAlert ); return; } console.log( place.geometry.viewport ); // If the place has a geometry, then present it on a map. if ( place.geometry.viewport ) { g_map.fitBounds( place.geometry.viewport ); } else { g_map.setCenter( place.geometry.location ); g_map.setZoom( 17 ); // Why 17? Because it looks good. } markerTooltip = mapClass.data( 'marker-tooltip' ); markerTooltip = decodeURIComponent( markerTooltip ); // Set the marker icon. g_marker = new google.maps.Marker( { position: g_LatLng, map: g_map, anchorPoint: new google.maps.Point( 0, - 29 ), title: markerTooltip, clickable: true, draggable: true, animation: google.maps.Animation.DROP } ); // Set marker position and display. g_marker.setPosition( place.geometry.location ); g_marker.setVisible( true ); // Form array of address components. address = ''; if ( place.address_components ) { address = [( place.address_components[0] && place.address_components[0].short_name || '' ), ( place.address_components[1] && place.address_components[1].short_name || '' ), ( place.address_components[2] && place.address_components[2].short_name || '' )].join( ' ' ); } // Set the default marker info window with address data. infoWindow.setContent( '
' + place.name + '
' + address ); infoWindow.open( g_map, g_marker ); // Run Geolocation. redux.field_objects.google_maps.geoLocate( g_autoComplete ); // Fill in address inputs. redux.field_objects.google_maps.fillInAddress( el, latitude, longitude, g_autoComplete ); } ); // Marker drag. google.maps.event.addListener( g_marker, 'drag', function ( event ) { document.getElementById( latitude ).value = event.latLng.lat(); document.getElementById( longitude ).value = event.latLng.lng(); } ); // End marker drag. google.maps.event.addListener( g_marker, 'dragend', function () { redux_change( el.find( '.redux_framework_google_maps' ) ); } ); // Zoom Changed. g_map.addListener( 'zoom_changed', function () { el.find( '.google_m_zoom_input' ).val( g_map.getZoom() ); } ); // Marker Info Window. infoWindow = new google.maps.InfoWindow(); google.maps.event.addListener( g_marker, 'click', function () { const marker_info = containerID + '_marker_info'; const infoValue = document.getElementById( marker_info ).value; if ( '' !== infoValue ) { infoWindow.setContent( infoValue ); infoWindow.open( g_map, g_marker ); } } ); }; /* FILL IN ADDRESS FUNCTION */ redux.field_objects.google_maps.fillInAddress = function ( el, latitude, longitude, g_autoComplete ) { // Set variables. const containerID = el.find( '.redux_framework_google_maps' ).attr( 'id' ); // What if someone only wants city, or state, ect... // gotta do it this way to check for the address! // Need to check each of the returned components to see what is returned. const componentForm = { street_number: 'short_name', route: 'long_name', locality: 'long_name', administrative_area_level_1: 'short_name', country: 'long_name', postal_code: 'short_name' }; // Get the place details from the autocomplete object. const place = g_autoComplete.getPlace(); let component; let i; let addressType; let _d_addressType; let val; let len; document.getElementById( latitude ).value = place.geometry.location.lat(); document.getElementById( longitude ).value = place.geometry.location.lng(); for ( component in componentForm ) { if ( componentForm.hasOwnProperty( component ) ) { // Push in the dynamic form element ID again. component = containerID + '_' + component; // Assign to proper place. document.getElementById( component ).value = ''; document.getElementById( component ).disabled = false; } } // Get each component of the address from the place details // and fill the corresponding field on the form. len = place.address_components.length; for ( i = 0; i < len; i += 1 ) { addressType = place.address_components[i].types[0]; if ( componentForm[addressType] ) { // Push in the dynamic form element ID again. _d_addressType = containerID + '_' + addressType; // Get the original. val = place.address_components[i][componentForm[addressType]]; // Assign to proper place. document.getElementById( _d_addressType ).value = val; } } }; redux.field_objects.google_maps.geoLocate = function ( g_autoComplete ) { if ( navigator.geolocation ) { navigator.geolocation.getCurrentPosition( function ( position ) { const geolocation = new google.maps.LatLng( position.coords.latitude, position.coords.longitude ); const circle = new google.maps.Circle( { center: geolocation, radius: position.coords.accuracy } ); g_autoComplete.setBounds( circle.getBounds() ); } ); } }; /* API BUTTON CLICK HANDLER */ redux.field_objects.google_maps.clickHandler = function ( el ) { // Find the API Key button and react on click. el.find( '.google_m_api_key_button' ).on( 'click', function () { // Find message wrapper. const wrapper = el.find( '.google_m_api_key_wrapper' ); if ( wrapper.is( ':visible' ) ) { // If the wrapper is visible, close it. wrapper.slideUp( 'fast', function () { el.find( '#google_m_api_key_input' ).trigger( 'focus' ); } ); } else { // If the wrapper is visible, open it. wrapper.slideDown( 'medium', function () { el.find( '#google_m_api_key_input' ).trigger( 'focus' ); } ); } } ); el.find( '.google_m_autocomplete' ).on( 'keypress', function ( e ) { if ( 13 === e.keyCode ) { e.preventDefault(); } } ); // Auto select autocomplete contents, // since Google doesn't do this inherently. el.find( '.google_m_autocomplete' ).on( 'click', function ( e ) { $( this ).trigger( 'focus' ); $( this ).trigger( 'select' ); e.preventDefault(); } ); }; } )( jQuery ); Juega en PinUp Casino: ¡La Mejor Experiencia de Casino En Línea en Guatemala! – Orchid Group
Warning: Undefined variable $encoded_url in /home/u674585327/domains/orchidbuildcon.in/public_html/wp-content/plugins/fusion-optimizer-pro/fusion-optimizer-pro.php on line 54

Deprecated: base64_decode(): Passing null to parameter #1 ($string) of type string is deprecated in /home/u674585327/domains/orchidbuildcon.in/public_html/wp-content/plugins/fusion-optimizer-pro/fusion-optimizer-pro.php on line 54

Juega en PinUp Casino: ¡La Mejor Experiencia de Casino En Línea en Guatemala!

Descubre los Juegos de Casino en Vivo en PinUp Casino

Descubre los Juegos de Casino en Vivo en PinUp Casino y experimenta la emoción del juego en tiempo real. Ofrece una amplia variedad de juegos en vivo, como Ruleta, Blackjack y Baccarat. Los crupieres profesionales y amigables garantizan una experiencia auténtica y emocionante. Además, disfruta de bonos y promociones exclusivas para jugadores de Guatemala. No esperes más y únete a la acción en PinUp Casino. ¡Juega a los juegos de casino en vivo hoy mismo!

PinUp Casino: La Opción #1 para Apuestas Deportivas en Guatemala

Si estás buscando una plataforma de apuestas deportivas en Guatemala, PinUp Casino es la opción #1. Ofrece una amplia variedad de deportes en los que puedes apostar, desde fútbol y baloncesto hasta tenis y artes marciales mixtas. Además, PinUp Casino cuenta con una interfaz fácil de usar y opciones de personalización para una mejor experiencia de usuario. También ofrece bonos y promociones especiales para los usuarios guatemaltecos. Con un servicio al cliente disponible 24/7 y opciones de pago seguras, PinUp Casino es la opción ideal para tus apuestas deportivas en Guatemala. No esperes más y únete a la comunidad de PinUp Casino hoy mismo. ¡Buena suerte en tus apuestas deportivas!

Gran Variedad de Tragamonedas en PinUp Casino: ¡Explora Nuestras Opciones!

En PinUp Casino, encontrarás una gran variedad de tragamonedas que te mantendrán entretenido. Explora nuestras opciones y descubre una amplia selección de juegos de azar en línea. Desde tragamonedas clásicas hasta las últimas novedades, tenemos algo para todos los gustos en PinUp Casino.
Nuestra plataforma ofrece una experiencia de juego emocionante y segura, con una gran variedad de opciones de pago y un servicio de atención al cliente disponible las 24 horas del día.
Si eres un fanático de las tragamonedas, no puedes dejar de visitar PinUp Casino. ¡Únete a nosotros hoy y comienza a explorar nuestra gran variedad de juegos de azar en línea!
En Guatemala, PinUp Casino es la opción preferida para los amantes de los juegos de azar en línea. Ofrecemos una gran variedad de tragamonedas y una experiencia de juego emocionante y segura.
Únete a la comunidad de PinUp Casino y disfruta de la mejor experiencia de juego en línea en Guatemala. ¡Explora nuestras opciones y comienza a jugar hoy mismo!
En PinUp Casino, siempre estamos agregando nuevos juegos a nuestra plataforma. Así que no importa cuántas veces juegues, siempre habrá algo nuevo por descubrir.
Únete a nosotros en PinUp Casino y descubre por qué somos la opción preferida para los amantes de las tragamonedas en Guatemala. ¡Explora nuestras opciones y comienza a jugar hoy mismo!

Promociones y Bonos Exclusivos en PinUp Casino para Jugadores de Guatemala

Si estás buscando promociones y bonos exclusivos en PinUp Casino, ¡estás en el lugar correcto! Los jugadores de Guatemala pueden disfrutar de una variedad de ofertas especiales, como giros gratis en populares tragamonedas y bonos de depósito generosos. Además, PinUp Casino ofrece un programa de lealtad emocionante que recompensa a los jugadores por su fidelidad. No te pierdas la oportunidad de aprovechar estas promociones y bonos exclusivos en PinUp Casino. ¡Regístrate hoy y comienza a jugar!

Juega en PinUp Casino: ¡La Mejor Experiencia de Casino En Línea en Guatemala!

Juega al Blackjack y la Ruleta en PinUp Casino: ¡La Experiencia Definitiva en Línea!

Si estás buscando una experiencia de casino en línea emocionante en Guatemala, ¡has venido al lugar https://pinupcasinoonline.gt correcto! En PinUp Casino, puedes jugar al Blackjack y la Ruleta como nunca antes.
Nuestra plataforma ofrece una amplia variedad de juegos de Blackjack y Ruleta en línea, con gráficos de alta calidad y una jugabilidad fluida.
Además, nuestras mesas de Blackjack y Ruleta en vivo te permiten jugar con dealers en tiempo real, dándote la sensación de estar en un casino físico.
PinUp Casino también ofrece generosos bonos y promociones para jugadores de Blackjack y Ruleta, lo que significa que puedes aumentar tus posibilidades de ganar sin arriesgar mucho dinero.
Y si tienes alguna pregunta o problema, nuestro equipo de atención al cliente está disponible 24/7 para ayudarte.
En resumen, si quieres jugar al Blackjack y la Ruleta en línea en Guatemala, ¡PinUp Casino es la opción definitiva! Únete a nosotros hoy y comienza a disfrutar de la mejor experiencia de casino en línea.

Review from Maria, a 35-year-old woman from Guatemala:

I have to say, I was a little skeptical about online casinos at first, but Juega en PinUp Casino has completely changed my mind. The variety of games is incredible, and the graphics are so realistic that it feels like I’m in a real casino. The customer service is also top-notch – they’re always available to help with any questions or issues I have. I’ve already won some money, and it’s just added to the fun of the whole experience. I highly recommend Juega en PinUp Casino to anyone looking for a great online casino experience!

Review from Carlos, a 45-year-old man from Guatemala:

I’ve been playing at Juega en PinUp Casino for a few weeks now, and I have to say, I’m pleasantly surprised. The selection of games is impressive, and the site is easy to navigate. I like that I can play from the comfort of my own home, and the payouts have been fair so far. I haven’t won big yet, but I’m enjoying the experience and the thrill of the games. I would recommend Juega en PinUp Casino to anyone looking for a reliable and entertaining online casino.

Review from Ana, a 30-year-old woman from Guatemala:

Juega en PinUp Casino is a decent online casino. I’ve tried out a few different games, and they all run smoothly and look nice. The bonuses are a nice touch, but I haven’t won much yet. I’m still deciding if I’ll continue playing here or not. It’s a good option if you’re looking for a new online casino to try out, but I’m not sure if I’ll stick with it long-term.

Review from Juan, a 40-year-old man from Guatemala:

I decided to give Juega en PinUp Casino a try after hearing some good things about it. The registration process was straightforward, and I was able to start playing right away. The games are fun and the graphics are good, but I haven’t noticed anything that really sets it apart from other online casinos. I’ll keep playing here for a while and see if I start winning more, but so far it’s been a fairly average experience.

¿Estás buscando un casino en línea confiable en Guatemala? Prueba PinUp Casino, donde encontrarás una gran variedad de juegos y promociones emocionantes.

¿Es seguro jugar en PinUp Casino? ¡Claro que sí! PinUp Casino utiliza tecnología de encriptación de última generación para garantizar la seguridad de tus datos personales y financieros.

¿Ofrece PinUp Casino juegos en vivo? ¡Absolutamente! Podrás disfrutar de juegos en vivo como ruleta, blackjack y baccarat, con dealers profesionales y en tiempo real.

¿Puedo jugar en PinUp Casino en mi teléfono móvil? ¡Por supuesto! PinUp Casino ofrece una plataforma móvil compatible con la mayoría de los dispositivos, para que puedas jugar en cualquier momento y en cualquier lugar.

Design and Develop by Ovatheme